package uade.distribuidas.server.manager;

import java.rmi.RemoteException;
import java.rmi.server.UnicastRemoteObject;
import java.util.ArrayList;
import java.util.List;

import uade.distribuidas.repo.dto.ProveedorDTO;
import uade.distribuidas.repo.exception.ExceptionProveedor;
import uade.distribuidas.repo.interfaces.ManagerProveedoresIf;
import uade.distribuidas.server.dao.ProveedoresDAO;
import uade.distribuidas.server.domain.Proveedor;



public class ManagerProveedores extends UnicastRemoteObject implements ManagerProveedoresIf {
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;


	public ManagerProveedores() throws RemoteException {
		super();
		// TODO Auto-generated constructor stub
	}
	
	public List<ProveedorDTO> getProveedores() throws ExceptionProveedor{
		List<ProveedorDTO> datos = new ArrayList<ProveedorDTO>();
		for(Proveedor c :ProveedoresDAO.getInstancia().getProveedores()){
			datos.add(c.getVista());
		}
		return datos;
		
	}

	public ProveedorDTO getProveedor(Integer id)throws ExceptionProveedor {
		return ProveedoresDAO.getInstancia().getProveedor(id).getVista();
	}
	
	public ProveedorDTO save(ProveedorDTO p)throws ExceptionProveedor {
		Proveedor clase=null;
		return ProveedoresDAO.getInstancia().save(clase).getVista();
	}

	public ProveedorDTO getProveedorPorCuil(String cuil)throws ExceptionProveedor {
		return ProveedoresDAO.getInstancia().getProveedorPorCuil(cuil).getVista();
	}
	public ProveedorDTO getProveedor(String cuil,String razonSocial)throws ExceptionProveedor {
		return ProveedoresDAO.getInstancia().getProveedor(cuil,razonSocial).getVista();
	}

}
